package com.lujianfei.mqtt.login.mvvm

import androidx.lifecycle.LiveData

/**
 * @Author: wn
 * @Date: 2024/4/15 16:18
 * @Description: 登录模块相关的 APi 仓库 接口
 */
interface ILoginRepository {
  /**
   * 手机号是否注册过
   */
  val registerRsp: LiveData<RegisterRsp?>

  /**
   * 登陆请求
   */
  val loginRsp: LiveData<UserInfo?>

  /**
   * 校验手机号是否注册、合法
   * @param account String -- 手机号
   */
  suspend fun checkRegister(account: String)

  /**
   * 手机号合法的基础上，调用登录，获取登录结果token
   * @param body LoginReq -- 登录模块相关的请求 数据类
   */
  suspend fun requestLogin(body: LoginReq)
}